package com.love.marriage.orderInfo.service;

import com.github.binarywang.wxpay.bean.result.WxPayUnifiedOrderV3Result;
import com.github.binarywang.wxpay.exception.WxPayException;
import com.love.marriage.datingRegistrationInfo.vo.DatingRegistrationInfoVo;
import com.love.marriage.eventRegistrationInfo.vo.EventRegistrationInfoVo;
import com.love.marriage.userBalanceInfo.vo.UserBalanceInfoAddVo;
import com.love.marriage.userMembershipInfo.vo.UserMembershipInfoVo;

public interface PayInfoService {

    WxPayUnifiedOrderV3Result.JsapiResult addAmount(UserBalanceInfoAddVo userBalanceInfoAddVo) throws WxPayException;

    WxPayUnifiedOrderV3Result.JsapiResult membership(UserMembershipInfoVo userMembershipInfoVo) throws WxPayException;

    Object notify(String xmlData) throws WxPayException;

    Object notify(String orderId, String attach) throws Exception;

    Object notify(String orderId, String attach, Boolean commission) throws Exception;

    WxPayUnifiedOrderV3Result.JsapiResult joinDatingWechat(DatingRegistrationInfoVo datingRegistrationInfoVo) throws Exception;

    WxPayUnifiedOrderV3Result.JsapiResult joinEventWechat(EventRegistrationInfoVo eventRegistrationInfoVo) throws Exception;
}
